草庐IT

Java Regex 在匹配中包含新行

全部标签

javascript - 使用 javascript 正则表达式查找第一个和最长的匹配项

我有一个类似于以下简化示例的RegExp:varexp=/he|hell/;当我在一个字符串上运行它时,它会给我第一个匹配项,fx:varstr="helloworld";varmatch=exp.exec(str);//matchcontains["he"];我想要第一个也是最长的匹配,我的意思是按索引排序,然后按长度排序。由于表达式是从一个RegExp数组组合而来的,我正在寻找一种无需重写正则表达式即可找到最长匹配项的方法。这可能吗?如果不是,我正在寻找一种方法来轻松分析表达式,并按正确的顺序排列它。但我无法弄清楚,因为表达式可能会复杂得多,fx:varexp=/h..|hel*/

javascript - 匹配名称的正则表达式

我正在尝试用Javascript编写正则表达式来匹配名称字段,其中唯一允许的值是字母、撇号和连字符。例如,应匹配以下名称:jhon'savat-arJosh有人可以帮我构造这样一个正则表达式吗? 最佳答案 是的。^[a-zA-Z'-]+$在这里,^表示字符串的开始,$表示字符串的结束。[…]是一个字符类,它里面的任何东西都会被匹配。x+表示可以重复一次或多次之前的模式。在字符类中,a-z和A-Z是大小写字母,'是撇号,-是连字符。连字符必须出现在开头或结尾,以避免与a-z中的范围分隔符混淆。请注意,此类不会匹配国际字符,例如一种。您

javascript匹配()错误

我正在尝试计算pre元素的行数,我正在使用它:varnumlines=$('#mypreelement').text().match(/\n\r?/g).length+1;它可以工作,但在某些情况下我会遇到错误Error:$('#mypreelement').text().match(/\n\r?/g)isnull这只发生在某些页面上,但这些页面与其工作的页面没有任何不同,当然除了内容之外...为什么? 最佳答案 这意味着它无法匹配它们中的任何一个,并且null没有length属性。所以试试这个...if(varlines=$('#

Javascript不区分大小写的匹配和替换?

基本上,我需要能够在字符串(不区分大小写)中找到某些单词(“单词”是指一组字符),如果它们匹配,我需要插入一个该特定字符集的第一个字母后的符号。我不能使用搜索替换,因为那样不会保留大小写。例子:Brownbrowniesareinanoven.如果我要找的词是brown,而我要插入的字符是*,那么结果应该是:B*rownb*rowniesareinanoven.在JS中最好的方法是什么? 最佳答案 带有选项'ig'的正则表达式可以解决问题。"Brownbrowniesareinanoven.".replace(/(b)(rown)/

javascript - 如何调试 $(document).ready() 中包含的 javascript?

我正在尝试在浏览器(特别是Chrome)中调试一些js。如何检查为some_data和new_data设置了什么值?我意识到由于变量范围被限制在函数中,some_data和new_data在文档ready()执行后不存在。$(document).ready(function(){varsome_data=[4,8,15,16,23,42];varnew_data=some_data*2;}); 最佳答案 使用开发者工具。如果您使用的是chrome,请按F12,转到源代码,找到您的javascript所在的文件,找到您的代码,设置一个

javascript - 使用 lodash 从与正则表达式匹配的数组中获取值

我的json数组:[{"id":"7","name":"hello"},{"id":"7","name":"shan"},{"id":"7","name":"john"}{"id":"7","name":"hello"}]我想获得一个新数组,该数组与name上以字母开头的正则表达式相匹配。我正在使用regexp但我不知道如何实现它。这是我的代码:varnewitem=_.filter(result,item=>item.name='hello');console.log(newitem);但它只返回与name的严格匹配。请帮我修改上面的内容,这样结果就是一个描述的新数组。预期输出当用户

Javascript 正则表达式匹配第一次出现

我有这个正则表达式(它不符合我的要求):/^.*\/(eu|es)(?:\/)?([^#]*).*/实际上是js版本的:/^.*/(eu|es)(?:/)?([^#]*).*/好吧,它没有做我想要的,当然可以。:)鉴于此网址:http://localhost/es->[1]=es,[2]=''http://localhost/eu/bla/bla#wop->[1]=eu,[2]='bla/bla'http://localhost/eu/bla/eubla->[1]=eu,[2]='bla'前两个网址按预期工作。第三个没有做我想做的事。由于稍后会在url上找到“eu”,因此它会与第二个e

javascript - 如何在此正则表达式中包含 - 和 '?

我在下面有一个用于某些输入名称字段的正则表达式。如何在其中包含撇号和连字符?InputField("tFName",/^[a-zA-Z-\-\]+$/); 最佳答案 已包含连字符(两次),您只需将其编辑到字符类中即可添加撇号:/^[a-zA-Z-\-\']+$/您可以将其重写为如下所示,这样就无需转义连字符并且只包含一次:/^[a-zA-Z'-]+$/示例:http://jsfiddle.net/a4vGA/ 关于javascript-如何在此正则表达式中包含-和'?,我们在StackO

javascript - 度数的 cos 与等效弧度的 cos 不匹配

JavaScript中的所有数学函数都使用弧度代替度数。然而,它们要么不相等,要么我离题太远。从度数到弧度的转换是:varrad=angle*Math.PI/18090度Angularequals1.57079633弧度90度Angular的余弦equals0.1.57079633弧度的余弦equals-3.20510345×10-9.请注意,在Javascript中,一切都一步完成以避免舍入错误:varcos=Math.cos(angle*Math.PI/180);我显然在这里遗漏了一些明显的东西,但男孩是不是搞砸了代码。 最佳答案

javascript - 在 div 中包装子元素的范围

我试图将一系列子元素包装在div中,以便分组操作它们;试图将每个组定位在不同的位置。场景是我有一个随机生成li标签的列表,无论出现多少标签,我都需要分别处理每组十个标签。为了解决这个问题,我使用了一个书面列表:$("ulliulli:nth-child(n+11)").wrapAll("");HelloStuffStuffStuffStuffStuffStuffStuffStuffStuffStuffStuff2Stuff2Stuff2Stuff2Stuff2Stuff2Stuff2Stuff2Stuff2Stuff2Stuff3Stuff3Stuff3Stuff3Stuff3Stuf